package com.androidhelper.module.common.base;

import android.app.Application;
import android.content.Context;

import com.androidhelper.module.common.app.ACache;
import com.androidhelper.module.common.app.AppConfig;
import com.androidhelper.module.common.utils.FileUtils;
import com.androidhelper.module.common.utils.LogUtils;

import java.io.File;

/**
 * 类的作用
 *
 * @author: lizubing
 */
public class BaseApplication extends Application {
  static private BaseApplication mApplication;
  static protected Context context;
  private static ACache mCache;

  @Override
  public void onCreate() {
    super.onCreate();
    mApplication = this;
    context = this.getApplicationContext();
   // initLog();
    initAppDir();
  }

  private void initAppDir() {
    LogUtils.e("initAppDir*************");
   //  AppPreferences.initPreferences(AppConfig.APP_PREF);//初始化sharedPreference
    FileUtils.makeDir(new File(AppConfig.MAIN_DIR));//创建程序主文件夹
    FileUtils.makeDir(new File(AppConfig.MAIN_DIR_IMG));//创建存放图片的文件夹
    FileUtils.makeDir(new File(AppConfig.MAIN_DIR_CRASH));//创建存放异常日志的文件夹
    FileUtils.makeDir(new File(AppConfig.MAIN_DIR_CACHE));//创建存放缓存的文件夹
    File aCacheDir = new File(AppConfig.MAIN_DIR_CACHE_A);
    FileUtils.makeDir(aCacheDir);//创建存放ACache的文件夹
    mCache = ACache.get(aCacheDir);
  }

  @Override
  public void onTerminate() {
    super.onTerminate();

  }

  /**
   * 返回上下文
   *
   * @return
   */
  public static Context getContext() {
    return context;
  }




  public static ACache getACache() {
    return mCache;
  }



  /**
   * 初始化LogUtils配置
   */
//  private void initLog() {
 //   LogUtils.init(AppConfig.IS_DEVELOPING);
//  }



  /**
   * 返回上下文
   *
   * @return
   */
  public static BaseApplication getInstance() {
    return mApplication;
  }







}
